package com.vito.oa.act.extend.dao;

import java.util.List;

import com.vito.act.model.ActExBussModel;
import com.vito.base.model.MyHashMap;
import com.vito.oa.act.extend.model.OaActExApproveInfoModel;

public interface OaActExApproveInfoMapper{
	/**
	 * 查询我发起的-流程中
	 * @param userId
	 * @return
	 */
	public List<MyHashMap<String, String>> queryLaunchInByUserIdByPage(OaActExApproveInfoModel actExApproveInfoModel);
	public int queryLaunchInCountByUserId(OaActExApproveInfoModel actExApproveInfoModel);
	/**
	 * 查询我发起的-已完结
	 * @param userId
	 * @return
	 */
	public List<MyHashMap<String, String>> queryLaunchEndByUserIdByPage(OaActExApproveInfoModel actExApproveInfoModel);
	public int queryLaunchEndCountByUserId(OaActExApproveInfoModel actExApproveInfoModel);
	/**
	 * 查询我审批得-流程中
	 * @param userId
	 * @return
	 */
	public List<MyHashMap<String, String>> queryApproveInByUserIdByPage(OaActExApproveInfoModel actExApproveInfoModel);
	public int queryApproveInCountByUserId(OaActExApproveInfoModel actExApproveInfoModel);
	/**
	 * 查询我审批得-已完结
	 * @param userId
	 * @return
	 */
	public List<MyHashMap<String, String>> queryApproveEndByUserIdByPage(OaActExApproveInfoModel actExApproveInfoModel);
	public int queryApproveEndCountByUserId(OaActExApproveInfoModel actExApproveInfoModel);
	
	/**
	 * 查询我发起得（包括流程中和已完结）
	 * 
	 */
	public List<MyHashMap<String, String>> queryLaunchByUserIdByPage(OaActExApproveInfoModel actExApproveInfoModel);
	public int queryLaunchCountByUserId(OaActExApproveInfoModel actExApproveInfoModel);
	/**
	 * 查询我审核的（包括流程中和已完结）
	 * @param actExApproveInfoModel
	 * @return
	 */
	public List<MyHashMap<String, String>> queryApproveByUserIdByPage(OaActExApproveInfoModel actExApproveInfoModel);
	public int queryApproveCountByUserId(OaActExApproveInfoModel actExApproveInfoModel);
	/**
	 * 管理员查询最高部门以下所有审批
	 * @param actExApproveInfoModel
	 * @return
	 */
	public List<MyHashMap<String, String>> queryLaunchByRootDeptByPage(OaActExApproveInfoModel actExApproveInfoModel);
	public int queryLaunchCountByRootDept(OaActExApproveInfoModel actExApproveInfoModel);
	/**
	 * 查询当前流程是否已使用
	 * 2017年1月16日
	 * @param processKey
	 * @return
	 */
	public int queryProcessDataCount(String processKey);
	/**
	 * 查询当前流程是否禁用
	 * @param processKey
	 * @return
	 */
	public int queryProcessStatus(ActExBussModel actExBussModel);
	
	/**
	 * 查询当前流程是否运行中
	 * @param processKey
	 * @return
	 */
	public int queryRunningDataCount(ActExBussModel actExBussModel);
}
